
		
			

local lists = {
    {
        '|cffff0000基础攻击：|r',
        '|cffff0000攻击成长：|r',
        '|cffff0000攻击加成：|r',
        '|cffff0000杀敌攻击：|r',
        '|cffff0000每秒攻击：|r',
        '|cffff0000攻击速度：|r',
        '|cffff0000攻击回血：|r',
        '|cffff0000攻击距离：|r',
    },
    {
        '|cffbda671生命上限：|r',
        '|cffbda671生命成长：|r',
        '|cffbda671生命加成：|r',
        '|cffbda671杀敌生命：|r',
        '|cffbda671每秒生命：|r',
        '|cffbda671生命恢复：|r',
        '|cffbda671生命恢复加成：|r',
        '|cffbda671每秒回血：|r',
    },
    {
        '|cffa97a50基础护甲：|r',
        '|cffa97a50基础魔抗：|r',
        '|cffa97a50护甲成长：|r',
        '|cffa97a50护甲加成：|r',
        '|cffa97a50每秒护甲：|r',
        '|cffa97a50攻击间隔：|r',
        '|cffa97a50多重射：|r',
        '|cffa97a50多重伤害：|r',
    },
    {
        '|cffcc99ff每秒金币：|r',
        '|cffcc99ff每秒木材：|r',
        '|cffcc99ff每秒杀敌：|r',
        '|cffcc99ff每秒经验：|r',
        '|cffcc99ff金币加成：|r',
        '|cffcc99ff杀敌加成：|r',
        '|cffcc99ff经验加成：|r',
        '|cffcc99ff全属性加成：|r',
    },
    {
        '|cffff0000基础力量：|r',
        '|cffff0000力量成长：|r',
        '|cffff0000力量加成：|r',
        '|cffff0000杀敌力量：|r',
        '|cffff0000每秒力量：|r',
    },
    {
        '|cff00ff00基础敏捷：|r',
        '|cff00ff00敏捷成长：|r',
        '|cff00ff00敏捷加成：|r',
        '|cff00ff00杀敌敏捷：|r',
        '|cff00ff00每秒敏捷：|r',
    },
    {
        '|cff00ccff基础智力：|r',
        '|cff00ccff智力成长：|r',
        '|cff00ccff智力加成：|r',
        '|cff00ccff杀敌智力：|r',
        '|cff00ccff每秒智力：|r',
    },
    {
        '|cffff0000暴击几率：|r',
        '|cffff0000暴击伤害：|r',
        '|cff00ccff法爆几率：|r',
        '|cff00ccff法爆伤害：|r',
        -- '|cffcc99ff钩锁速度：|r',
        -- '|cffcc99ff钩锁次数：|r',
        -- '|cffcc99ff钩锁长度：|r',
    },
    {
        '|cff00ccff魔法伤害：|r',
        '|cff00ccff魔法伤害加成：|r',
        '|cff00ccff技能伤害：|r',
        '|cff00ccff技能伤害加成：|r',
        '|cff00ccff魔法上限：|r',
        '|cff00ccff法术穿透：|r',
        '|cff00ccff魔抗固穿：|r',
        '|cff00ccff魔法恢复：|r',
    },
    {
        '|cffa97a50物理伤害：|r',
        '|cffa97a50物理伤害加成：|r',
        '|cffa97a50攻击伤害：|r',
        '|cffa97a50攻击伤害加成：|r',
        '|cffa97a50护甲穿透：|r',
        '|cffa97a50护甲固穿：|r',
        '|cffa97a50伤害增幅：|r',
        '|cffa97a50最终伤害：|r',
    }
}
local data = load_excel('基础设定.xlsx','属性定义')
local is_race = {}
local colors = {0xff00ffff,0xffff9900,0xff00ffff,0xffff9900,0xff00ffff}
local w,h = 220,25
local x0,y0 = 10,65
local w1,h1 = 900,700
local panel = class.panel:builder {
    x = (1920-w1)/2,
    y = 100,
    w = w1,
    h = h1,
    --fdf = 'tooltip_backdrop0',
    normal_image = [[textures\black32.blp]],
    title = {
        type = 'text',
        text = '详细信息',
        font_size = 20,
        justH = "CENTER",
        justV = "MIDDLE",
        h = 80,
    },
    show_flag = false,
}

panel.items = {}
panel:set_level(99)
local fmt = '(%|[cC]%w%w%w%w%w%w%w%w)(.-)(：%|[Rr])'
local backs = {
    [[ui\Tab\暗.tga]],
    [[ui\Tab\亮.tga]],
}
for i=0,#lists,4 do
    local max_h = 0
    for b=1,4 do
        local da = lists[i+b]
        local color = colors[b]
        if da then
            max_h = math.max(max_h,(#da * h))
            local path = backs[1]
            local back = panel:add_panel(path,(b-1)*w+5,y0,(w-10),200)
            for a,name in ipairs(da) do
                local _,title = name:match(fmt)
                if not title then
                    title = name
                end
                local data = data[title]
                if data and data.is_race then
                    is_race[name] = true
                end
                local x,y = x0 + (b-1)*w,y0 + (a-1)*h
                local text1 = panel:add_text(name,x,y,w*0.65,h,12,5)
                local text2 = panel:add_text('10',x+text1.w,y,w - text1.w,h,12,5)
                --text1:set_color(color)
                text2.name = name
                text2.key = data.key or title
                table.insert(panel.items,text2)
            end
        end
    end
    y0 = y0 + max_h + h
end



function panel:refresh()
    local player = ac.player.self
    local hero = player.hero
    if hero then
        for _,text in ipairs(self.items) do
            local name = text.name
            local key = text.key
            local num = hero:get(key)
            local ex = ''
            if is_race[name] then
                ex = '%'
            end
            if num<10 and num>-10 and num~=0 then
                text:set_text(('%0.1f%s|n'):format(num,ex))
            else
                text:set_text(('%0.f%s|n'):format(num,ex))
            end
        end
    end
end

function panel:open()
    if self.show_flag then
        self:hide()
    else
        self:show()
    end
end

ac.hardware:on "界面绘制" (function ()
    if panel.show then
        panel:refresh()
    end
end)

local button = class.button.create([[ui\Tab面板.tga]],-320,980,64,64)
button.hotkey = 'TAB'
function button:on_button_key_down(key)
    panel:open()
end

function button:on_button_clicked()
    panel:open()
end

ac.game:notify('游戏-注册显示UI',panel,true)
